package com.domain.dto;


import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

@Data
@ApiModel(value = "科研诚信-新增/修改操作")
public class KycxDTO {
    /**
     * ID
     */
    @ApiModelProperty(value = "ID")
    private String id;

    /**
     * 名称
     */
    @ApiModelProperty(value = "名称")
    private String name;

    /**
     * 1:论文  2:专利  3:著作
     */
    @ApiModelProperty(value = "类型 -> 1=论文，2=专利，3=著作" ,required = true)
    @NotNull(message = "类型不能为空")
    private Integer type;

    /**
     * 发表/出版时间
     */
    @ApiModelProperty(value = "发表/出版时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date publishDate;

    /**
     * 发布单位
     */
    @ApiModelProperty(value = "发布单位id")
    private String publishUnit;


    /**
     * 文件ID
     */
    @ApiModelProperty(value = "文件ID")
    private String fileId;


    /**
     * 一级学科id
     */
    @ApiModelProperty(value = "一级学科id")
    private String subjectId;



    /**
     * 流程实例id
     */
    @ApiModelProperty(value = "流程实例id")
    private String processInstanceId;


    /**
     * 审核状态
     */
    private String checkstatus;

    /**
     * 审核时间
     */
    private String checkdate;

    /**
     * 审核人
     */
    private String checker;


    @ApiModelProperty(value = "提交类型 -> -1:暂存,1:提交,2:保存并通过")
    private Integer submitType;

    private Boolean isAuditor;

    private String taskId;


    /*------------------ 论文---------------------------*/
    /**
     *  投稿期刊
     */
    @ApiModelProperty(value = "投稿期刊")
    private  String   magazineName;

    /*------------------ 专利---------------------------*/

    /**
     *  专利类型
     */
    @ApiModelProperty(value = "专利类型")
    private String modeId;


    /*------------------ 著作 ---------------------------*/


    /**
     * 出版社
     */
    @ApiModelProperty(value = "出版社")
    private String publishCompany;

    /**
     * 作者信息list
     */
    @ApiModelProperty(value = "论文作者信息list")
    private List<KycxAuthorDTO> authorList;


}
